package cn.edu.xjtu.android.emoji_warfare_android.engine.entity;

import cn.edu.xjtu.android.emoji_warfare_android.engine.shape.Shape;

/**
 * MovableEntity<br>
 * 可移动实体类<br>
 * 包括：子弹、激光、元气弹<br>
 * 不包括：玩家、敌人、血条、技能槽等<br>
 * 理由是后面这些不属于会自然而然移动的实体，他们应该通过其他方式实现移动
 * 
 * @author bill
 *
 */
public class MovableEntity extends Entity implements Movable {
    /**
     * 构造一个可移动实体<br>
     * 形状轮廓起到碰撞箱的作用
     * 
     * @param birthX
     *            出生点x坐标
     * @param birthY
     *            出生点y坐标
     * @param outline
     *            轮廓
     */
    public MovableEntity(float birthX, float birthY, Shape outline) {
        super(birthX, birthY, outline);
    }

    /**
     * 构造一个可移动实体<br>
     * 形状轮廓起到碰撞箱的作用
     * 
     * @param outline
     *            形状轮廓
     */
    public MovableEntity(Shape outline) {
        this(0, 0, outline);
    }

    /**
     * 进行这一帧的移动，即将位置移动到下一物理帧，对象应该处于的位置。<br>
     * 返回值标识这个对象移动完毕后是否需要从引擎中清除，需要清除为真，不需要为假。
     */
    @Override
    public boolean move() {
        return false;
    }

}
